package br.com.petshop.entidades;



import java.io.Serializable;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;

/**
 *
 * @author Sidney
 * @version 1.0
 * @see VendaDAO
 * esta classe representa a tabela vendas no BD.
 */
public class Venda implements Serializable{
    private Integer id;
    private Usuario idVendedor;//o vendedor e o usuario logado no sistema
    private Date dtVenda;
    private float totalVenda;
    private List<ItemVenda> itens = new LinkedList<ItemVenda>();
    
    public Venda(){
        
    }

    public Venda(Integer id) {
        this.id = id;
    }
    public Venda(Integer id, Usuario idVendedor, Date dtVenda, float totalVenda) {
        this.id = id;
        this.idVendedor = idVendedor;
        this.dtVenda = dtVenda;
        this.totalVenda = totalVenda;
    }

    public Date getDtVenda() {
        return dtVenda;
    }

    public void setDtVenda(Date dtVenda) {
        this.dtVenda = dtVenda;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Usuario getIdVendedor() {
        return idVendedor;
    }

    public void setIdVendedor(Usuario idVendedor) {
        this.idVendedor = idVendedor;
    }

    public float getTotalVenda() {
        return totalVenda;
    }

    public void setTotalVenda(float totalVenda) {
        this.totalVenda = totalVenda;
    }

    public List<ItemVenda> getItens() {
        return itens;
    }

    public void setItens(List<ItemVenda> itens) {
        this.itens = itens;
    }    

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Venda other = (Venda) obj;
        if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 3;
        hash = 37 * hash + (this.id != null ? this.id.hashCode() : 0);
        return hash;
    }   
    
}
